The invention relates to a method of converting a stream of databits of a binary information signal into a stream of databits of a constrained binary channel signal, wherein the stream of databits of the binary information signal is divided into n-bit information words, said information words being converted into m1-bit channel words in accordance with a channel code C1, or m2-bit channel words in accordance with a channel code C2, where m1, m2 and n are integers for which it holds that m2 greater than m1xe2x89xa7n, wherein the m2-bit channel word is chosen from at least two m2-bit channel words at least two of which have opposite parities, the concatenated m1-bit channel words and the m2-bit channel words complying with a runlength constraint of the binary channel signal, the method comprising the repetitive and/or alternate steps of:
selecting the m1-bit channel word from a set out of a plurality of sets of m1-bit channel words, each set comprising only m1-bit channel words having a beginning part out of a subset of beginning parts of the m1-bit channel words, each set being associated with a coding state of channel code C1, the coding state being established in dependence upon an end part of the preceding channel word, or:
selecting the m2-bit channel word from a set out of a plurality of sets of m2-bit channel words, each set comprising only m2-bit channel words having a beginning part out of a subset of beginning parts of the m2-bit channel words belonging to said set, each set being associated with a coding state of channel code C2, the coding state being established in dependence upon an end part of the preceding channel word, the end parts of the m1-bit channel words in a coding state of channel code C1 and the beginning parts of the m2-bit channel words in a set of channel code C2 being arranged to comply with said runlength constraint.
The invention also relates to a device for encoding, a signal comprising a stream of databits of a constrained binary channel signal, a record carrier, a method for decoding and a device for decoding.
The non-prepublished, co-pending European Patent Application no. 00200712.8 (PH-NL000074) describes a constrained binary channel signal which is constructed by repetitively or alternate using a channel code C1 and a channel code C2. Due to the fact that two channel words with opposite parities are available in the channel code C2 for each information word, predetermined properties of the constrained binary channel signal can be influenced, e.g. for performing guaranteed DC-control. No additional DC-control on top of this guaranteed DC-control is performed. It may be advantageous to be able to create this additional DC-control.
The invention has for an object to further influence predetermined properties of the above-mentioned constrained binary channel signal, e.g. for performing additional DC-control.
The method according to the invention comprises the step of substituting, in dependence upon a value of a predetermined property of the binary channel signal, a channel word for a substitute channel word so as to influence the value of the predetermined property of the binary channel signal, wherein the substituted channel word and the substitute channel word establish the same state.
This process of substituting channel words can only be performed for a limited number of entries in the code table. By substituting a limited number of channel words for substitute channel words, stochastic DC-control can be accomplished, for instance, if the substitutions cause a parity inversion. Stochastic control is understood to be the kind of control in which the actual use of this control via substitution depends on the actual data content (information words) that enters the encoder. The choice whether to perform a substitution can be carried out on the basis of the value of a predetermined property of the binary channel signal, e.g. based on an RDS-related criterion or a DSV-related criterion. RDS stands for xe2x80x9cRunning Digital Sumxe2x80x9d. By controlling this RDS, the suppression of lowfrequency components or DC-control can be accomplished. DSV stands for xe2x80x9cDigital Sum Variationxe2x80x9d, indicating the total number of sum values a binary channel signal assumes. The choice whether to perform a substitution can be made in dependence upon the value of any predetermined property of the binary channel signal one wants to influence (e.g. the generation of pilot tracking tones, refer to U.S. Pat. No. 5,136,436 (PHN 12533)).
The invention is based on the recognition that, in the design of the channel code based on the combination of two codes C1 and C2 (refer to the non-prepublished, co-pending European Patent Application no. 00200712.8 (PH-NL000074)), there is some extra room for the introduction of stochastic control on top of the guaranteed control. This extra room is exploited in that a limited number of channel words is substituted for other substitute words in order to be able to influence predetermined properties of the binary channel signal. Substitution of channel words also relates to the substitution of a part of a channel word. In order to guarantee, for instance, a DC-control of a predetermined performance level in the channel code based on the combination of the two codes C1 and C2, the substitutions, i.e. the combination of substituted channel word and substitute channel word, must have the property that both the substituted channel word and the substitute channel word establish the same state.
In another method according to the invention, the step of substituting a channel word for a substitute channel word comprises different types of substitutions.
The available room in the design of the above-mentioned channel code can be used to introduce different types of substitutions. In this way, substitutions are created, for more information words thereby increasing the stochastical control on the binary channel signal.
In another method according to the invention, maximally one type of substitution occurs for each information word.
It is advantageous to introduce maximally one type of substitution for each information word. In this way, the available substitutions are better xe2x80x9cspreadxe2x80x9d over the information words, thereby increasing the stochastic control on the binary channel signal.
In another method according to the invention, the substitute channel word does not belong to the sets of channel words of channel codes C1 or C2.
This first substitution type is based on the fact that, in this channel code, some specific channel words do not occur in the channel bitstream under normal application of the channel code; these channel words can be used as substitute channel words. By substituting a limited number of channel words for substitute channel words not belonging to the channel words present in the binary channel signal before the substitutions, additional, stochastic DC-control can be accomplished.
In another method according to the invention, the substitute channel word is omitted from the sets of channel words of channel codes C1 or C2 in view of a constraint on the number of successive xT runlengths in the binary channel signal. In an embodiment, x=3. In another embodiment, the number of successive xT runlengths is 6.
This second substitution type is based on the fact that some channel words, which are initially omitted in view of an RMTR constraint, can be used as substitutions on the condition that concatenation with the previous channel word does not lead to a violation of this RMTR constraint. RMTR stands for xe2x80x9cRepeated Minimum Transition Runlengthxe2x80x9d. An RMTR=6 constraint e.g. implies that the number of successive 3T runlengths in the sequence of channel words is limited to 6. More information about this constraint can be found in published patent application WO99/63671-A1 (PHQ 98.023).
In another method according to the invention, the substitute channel word is chosen from one set of a plurality of sets of channel words, the set being associated with a coding state different from the coding state the substituted channel word was in.
This third substitution type is due to the fact that, due to the structure of the channel code, it is possible to xe2x80x9cswapxe2x80x9d between coding states conditionally, which means that the xe2x80x9cswapxe2x80x9d can only be done for some channel words. xe2x80x9cSwapxe2x80x9d is understood to mean that the substitute channel word used in the binary channel signal is chosen from a coding state different from the coding state the substituted channel word is in. If the parity of the substituted channel word is different from the parity of the substitute channel word, room for extra influence of predetermined properties of the binary channel signal is created.